// pages/home/home.js

const { http } = getApp()

Page({

  /**
   * 页面的初始数据
   */
  data: {
    navs: [],
    floors:[],
    subCateId:'2c9f6c946077476a0160781eb392000d',
    current: 1,
    num: 10,
    isBottom: false
  },
  enterDetail(e){
    // 进入商品详情
    console.log(e.currentTarget.dataset.id)
    const { id } = e.currentTarget.dataset;
    wx.navigateTo({
      url: `/pages/detail/detail?id=${id}`,
    })
  },
  enterItemList(e){
    // 点击进入商品列表
    const { cateid } = e.currentTarget.dataset;
    
    wx.navigateTo({
      url: `/pages/itemList/itemList?cateId=${cateid}`
    })
  },
  // 请求所有分类
  getNavs(){
    http({
      url:"/goods/getCategoryList"
    }).then(res=>{
      console.log(res)
      if(res.data.code === 200){
        this.setData({
          navs: res.data.message
        })
      }
    })
  },
  // 请求推荐商品数据
  getFloors(){
    if(this.data.isBottom){
      return ;
    }
    http({
      url: '/goods/getGoodsListByCategorySubID',
      method:'POST',
      data:{
        categorySubId: this.data.subCateId,
        page:this.data.current,
        num:this.data.num
      }
    }).then(res=>{
      
      // 判断是不是最后一页
      if(res.data.code === 200){
        if(!res.data.message.length){
          this.setData({
            isBottom: true
          })
        }
        this.setData({
          floors: [...this.data.floors, ...res.data.message]
        })
      }
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    this.getNavs();
    this.getFloors()
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    // 下拉重新获取 当前 推荐商品的数据
    this.getFloors()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    /* 
    
    触底后 获取下一页的数据
    成功 将下一页数据 合并当上一页数据中
    */
   this.setData({
     current: ++this.data.current
   })
   this.getFloors()
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  }
})